package com.atguigu.schedule.service;

import com.atguigu.schedule.pojo.RecordingQueryRequest;
import com.atguigu.schedule.pojo.RecordingResponse;
import com.atguigu.schedule.pojo.StartRecordingRequest;
import com.atguigu.schedule.pojo.TimeRange;

import java.time.LocalDate;
import java.util.List;

/**
 * 视频录制服务接口
 */
public interface VideoRecordingService {
    
    /**
     * 开始录制
     */
    RecordingResponse startRecording(StartRecordingRequest request);
    
    /**
     * 停止录制
     */
    boolean stopRecording(Long recordingId);
    
    /**
     * 获取录制状态
     */
    RecordingResponse getRecordingStatus(Long recordingId);
    
    /**
     * 查询录制列表
     */
    List<RecordingResponse> getRecordings(RecordingQueryRequest request);
    
    /**
     * 获取录制时间段
     */
    List<TimeRange> getRecordingTimeRanges(LocalDate date);
    
}
